package com.ylkj.bus.app.report;

import com.ylkj.bus.BaseDO;
import com.ylkj.dao.TableField;
import com.ylkj.dao.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;


/**
 * @Author: wengzx
 * @Date: 2025/3/28
 * @Desc: 设备容器表列表
 */
@Data
@EqualsAndHashCode
@TableName("t_iotp_device_container")
public class DeviceContainerDO extends BaseDO {
    /**
     * @fieldName: id
     * @fieldType: String
     * @Description: ID
     */
    @TableField("id")
    private String id;
    /**
     * @fieldName: containerName
     * @fieldType: String
     * @Description: 容器名称
     */
    @TableField("container_name")
    private String containerName;
    /**
     * @fieldName: cpu
     * @fieldType: String
     * @Description: cpu核数
     */
    @TableField("cpu")
    private String cpu;
    /**
     * @fieldName: memory
     * @fieldType: String
     * @Description: 内存限值
     */
    @TableField("memory")
    private String memory;
    /**
     * @fieldName: disk
     * @fieldType: String
     * @Description: 磁盘限值
     */
    @TableField("disk")
    private String disk;
    /**
     * @fieldName: businessType
     * @fieldType: String
     * @Description: 业务类型 (BUS_TYPE 0:营销 1: 配电)
     */
    @TableField("business_type")
    private String businessType;
    /**
     * @fieldName: businessSystemType
     * @fieldType: String
     * @Description: 业务系统 （BUS_SYS_TYPE 0: 福州供电公司 1: 泉州供电公司）
     */
    @TableField("business_system_type")
    private String businessSystemType;
    /**
     * @fieldName: mount
     * @fieldType: String
     * @Description: 挂载地址
     */
    @TableField("mount")
    private String mount;
    /**
     * @fieldName: interfaceMapping
     * @fieldType: String
     * @Description: 映射的硬件接口
     */
    @TableField("interface_mapping")
    private String interfaceMapping;
    /**
     * @fieldName: port
     * @fieldType: String
     * @Description: 端口映射
     */
    @TableField("port")
    private String port;
    /**
     * @fieldName: cpuLmt
     * @fieldType: String
     * @Description: cpu监控阈值
     */
    @TableField("cpu_lmt")
    private String cpuLmt;
    /**
     * @fieldName: memLmt
     * @fieldType: String
     * @Description: 内存监控阈值
     */
    @TableField("mem_lmt")
    private String memLmt;
    /**
     * @fieldName: storageLmt
     * @fieldType: String
     * @Description: 磁盘存储监控阈值
     */
    @TableField("storage_lmt")
    private String storageLmt;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    /**
     * 修改时间
     */
    @TableField("update_time")
    private Date updateTime;

    /**
     * 操作人
     */
    @TableField("operator_id")
    private String operatorId;

    /**
     * @fieldName: imageVersion
     * @fieldType: String
     * @Description: 基础镜像版本
     */
    @TableField("image_version")
    private String imageVersion;

    /**
     * 创建状态
     */
    @TableField("create_status")
    private String createStatus;

    /**
     * 总体运行状态( CONTAINER_STATUS 0:停止1:启动2:部分启动)
     */
    @TableField("container_status")
    private String containerStatus;


    /**
     * @fieldName: deviceCode
     * @fieldType: String
     * @Description: 设备标识
     */
    @TableField("device_code")
    private String deviceCode;

    /**
     * 是否删除(0：删除，1：存在)
     */
    @TableField("is_remove")
    private String isRemove;

    /**
     * 模板ID
     */
    @TableField("template_id")
    private String templateId;

    /**
     * CPU使用率
     */
    @TableField("cpu_rate")
    private String cpuRate;

    /**
     * 内存使用率
     */
    @TableField("memory_rate")
    private String memoryRate;

    /**
     * 硬盘使用率
     */
    @TableField("storage_rate")
    private String storageRate;

    /**
     * 来源 1:平台新增 2：终端预置
     */
    @TableField("source")
    private Integer source;

    /**
     * 容器IP端口
     */
    @TableField("ip")
    private String ip;

    /**
     * 容器最后一次启动时间
     */
    @TableField("started")
    private Date started;

    /**
     * 运行时间，单位：秒
     */
    @TableField("life_time")
    private Long lifeTime;

    /**
     * 容器镜像
     */
    @TableField("image")
    private String image;

}
